<?php

/**
 * Subclass for performing query and update operations on the 'jour' table.
 *
 *
 *
 * @package lib.model
 */
class JourPeer extends BaseJourPeer {
//retourne une instance de jour de travail
//deuxieme argument attendu: instance de classe date
	/*
	 * Utilis�e pour acceder � un jour de travail � partir du salari� et de la date
	 * si l'instance n'existe pas, elle est cr��e et correctement initialis�e
	 * @param salarie salarie
	 * @param clDate date
	 * @return jour jour de travail
	 * 
	 */
    static public function getJourTravail(salarie $salarie,clDate $date) {
      sfContext::getInstance()->getConfiguration()->loadHelpers('Util');
//	sfLoader::loadHelpers(array('Util')); <!-- Deprecated in Sf 1.4 -->
	$c =  new Criteria() ;
	$c -> add(JourPeer::DATE,$date->getDate()) ;
	$c -> add(JourPeer::WORKER_ID,$salarie->getPrimaryKey()) ;
	$jourTravail = getFirstEleTab(JourPeer::doSelect($c));
	//si il n'existe pas dans la base
	if( ! $jourTravail ) {
	    $jourTravail = new Jour() ;
	    $jourTravail->setWorkerId($salarie->getPrimaryKey());
	    $jourTravail->setDate($date->getDate());
	    $jourTravail->setSemaineId(SemainePeer::getSemaineTravail($salarie,$date)->getId());
	    $jourTravail->save();
	}
	return $jourTravail;
    }
}
